42 research outputs found

    FFS Factory: Adapting Coppersmith\u27s Factorization Factory to the Function Field Sieve

    Get PDF
    In 1993, Coppersmith introduced the factorization factory approach as a means to speed up the Number Field Sieve algorithm (NFS) when factoring batches of integers of similar size: at the expense of a large precomputation whose cost is amortized when considering sufficiently many integers to factor, the complexity of each individual factorization can then be lowered. We suggest here to extend this idea to the computation of discrete logarithms in finite fields of small characteristic using the Function Field Sieve (FFS), thus referring to this approach as the FFS factory . In this paper, the benefits of the proposed technique are established thanks to both a theoretical complexity analysis along with a practical experiment in which we solved the discrete logarithm problem in fifty different binary fields of sizes ranging from 601 to 699 bits

    FFS Factory: Adapting Coppersmith's "Factorization Factory" to the Function Field Sieve

    Get PDF
    In 1993, Coppersmith introduced the "factorization factory" approach as a means to speed up the Number Field Sieve algorithm (NFS) when factoring batches of integers of similar size: at the expense of a large precomputation whose cost is amortized when considering sufficiently many integers to factor, the complexity of each individual factorization can then be lowered. We suggest here to extend this idea to the computation of discrete logarithms in finite fields of small characteristic using the Function Field Sieve (FFS), thus referring to this approach as the "FFS factory". In this paper, the benefits of the proposed technique are established thanks to both a theoretical complexity analysis along with a practical experiment in which we solved the discrete logarithm problem in fifty different binary fields of sizes ranging from 601 to 699 bits

    Fonctions élémentaires en virgule flottante pour les accélérateurs reconfigurables

    Get PDF
    National audienceLes circuits reconfigurables FPGA ont désormais une capacité telle qu'ils peuvent être utilisés à des tâches d'accélération de calcul en virgule flottante. La littérature (et depuis peu les constructeurs) proposent des opérateurs pour les quatre opérations. L'étape suivante est de proposer des opérateurs pour les fonctions élémentaires les plus utilisées. Parmi celles-ci, nous proposons des architectures dédiées pour l'évaluation des fonctions exponentielles, logarithme, sinus et cosinus, et étudions les compromis possibles. Pour chacune de ces fonctions, un seul de ces opérateurs surpasse d'un facteur dix les processeurs généralistes en terme de débit, tout en occupant une fraction des ressources matérielles du FPGA. Tous ces opérateurs sont disponibles librement sur http://www.ens-lyon.fr/LIP/Arenaire/

    When FPGAs are better at floating-point than microprocessors

    Get PDF
    It has been shown that FPGAs could outperform high-end microprocessors on floating-point computations thanks to massive parallelism. However, most previous studies re-implement in the FPGA the operators present in a processor. This is a safe and relatively straightforward approach, but it doesn't exploit the greater flexibility of the FPGA. This article is a survey of the many ways in which the FPGA implementation of a given floating-point computation can be not only faster, but also more accurate than its microprocessor counterpart. Techniques studied here include custom precision, specific accumulator design, dedicated architectures for coarser operators which have to be implemented in software in processors, and others. A real-world biomedical application illustrates these claims. This study also points to how current FPGA fabrics could be enhanced for better floating-point support

    Relation collection for the Function Field Sieve

    Get PDF
    International audienceIn this paper, we focus on the relation collection step of the Function Field Sieve (FFS), which is to date the best known algorithm for computing discrete logarithms in small-characteristic finite fields of cryptographic sizes. Denoting such a finite field by GF(p^n), where p is much smaller than n, the main idea behind this step is to find polynomials of the form a(t)-b(t)x in GF(p)[t][x] which, when considered as principal ideals in carefully selected function fields, can be factored into products of low-degree prime ideals. Such polynomials are called ''relations'', and current record-sized discrete-logarithm computations require billions of them. Collecting relations is therefore a crucial and extremely expensive step in FFS, and a practical implementation thereof requires heavy use of cache-aware sieving algorithms, along with efficient polynomial arithmetic over GF(p)[t]. This paper presents the algorithmic and arithmetic techniques which were put together as part of a new implementation of FFS, aimed at medium- to record-sized computations, and planned for public release in the near future

    Recherche automatique de formules pour calculer des formes bilinéaires

    Get PDF
    National audienceThis talk will focus on the bilinear rank problem: given a bilinear map (e.g., the product of polynomials, of finite-field elements, or of matrices), what is the smallest number of multiplications over the coefficient ring required to evaluate this function?For instance, Karatsuba's method allows one to compute the product of two linear polynomials using only three multiplications instead of four. In this talk, we give a formalization of the bilinear rank problem, which is known to be NP-hard, and propose a generic algorithm to efficiently compute exact solutions, thus proving the optimality of (or even improving) known complexity bounds from the literature.Dans cet exposé, nous nous intéressons au problème du rang bilinéaire : étant donnée une application bilinéaire (par exemple, le calcul d’un produit de polynômes, d’éléments d’un corps fini, ou encore de matrices), quel est le nombre minimal de multiplications sur le corps de base nécessaires pour évaluer cette application ?Ainsi, par exemple, la méthode de Karatsuba permet de calculer le produit de deux polynômes linéaires en seulement trois multiplications au lieu de quatre. Nous donnons dans cet exposé une formalisation du problème du rang bilinéaire, connu pour être NP-dur, et proposons un algorithme général permettant de calculer efficacement des solutions exactes, qui nous permettent ainsi de prouver l’optimalité de, voire même d’améliorer certaines bornes de la littérature

    Fast Modular Arithmetic on the Kalray MPPA-256 Processor for an Energy-Efficient Implementation of ECM

    Get PDF
    International audienceThe Kalray MPPA-256 processor is based on a recent low-energy manycore architecture. In this article, we investigate its performance in multiprecision arithmetic for number-theoretic applications. We have developed a library for modular arithmetic that takes full advantage of the particularities of this architecture. This is in turn used in an implementation of the ECM, an algorithm for integer factorization using elliptic curves. For parameters corresponding to a cryptanalytic context, our implementation compares well to state-of-the-art implementations on GPU, while using much less energy

    Fast Architectures for the ηT\eta_T Pairing over Small-Characteristic Supersingular Elliptic Curves

    Get PDF
    This paper is devoted to the design of fast parallel accelerators for the cryptographic ηT\eta_T pairing on supersingular elliptic curves over finite fields of characteristics two and three. We propose here a novel hardware implementation of Miller\u27s algorithm based on a parallel pipelined Karatsuba multiplier. After a short description of the strategies we considered to design our multiplier, we point out the intrinsic parallelism of Miller\u27s loop and outline the architecture of coprocessors for the ηT\eta_T pairing over F2m\mathbb{F}_{2^m} and F3m\mathbb{F}_{3^m}. Thanks to a careful choice of algorithms for the tower field arithmetic associated with the ηT\eta_T pairing, we manage to keep the pipelined multiplier at the heart of each coprocessor busy. A final exponentiation is still required to obtain a unique value, which is desirable in most cryptographic protocols. We supplement our pairing accelerators with a coprocessor responsible for this task. An improved exponentiation algorithm allows us to save hardware resources. According to our place-and-route results on Xilinx FPGAs, our designs improve both the computation time and the area-time trade-off compared to previously published coprocessors

    Fast architectures for the ηT\eta_T pairing over small-characteristic supersingular elliptic curves

    Get PDF
    International audienceThis paper is devoted to the design of fast parallel accelerators for the cryptographic ηT\eta_T pairing on supersingular elliptic curves over finite fields of characteristics two and three. We propose here a novel hardware implementation of Miller's algorithm based on a parallel pipelined Karatsuba multiplier. After a short description of the strategies we considered to design our multiplier, we point out the intrinsic parallelism of Miller's loop and outline the architecture of coprocessors for the ηT\eta_T pairing over \F_{2^m} and \F_{3^m}. Thanks to a careful choice of algorithms for the tower field arithmetic associated with the ηT\eta_T pairing, we manage to keep the pipelined multiplier at the heart of each coprocessor busy. A final exponentiation is still required to obtain a unique value, which is desirable in most cryptographic protocols. We supplement our pairing accelerators with a coprocessor responsible for this task. An improved exponentiation algorithm allows us to save hardware resources. According to our place-and-route results on Xilinx FPGAs, our designs improve both the computation time and the area-time trade-off compared to previously published coprocessors
    corecore